05. Search and Ranking
Searching online has become such a common activity - searching for answers, how-tos, and what not! It has become even more popular and reliable because of the increase in accuracy of search results that are returned.
As such, “search” itself is typically not considered an AI or machine learning problem, but you can always treat it as one. Essentially, you’re looking to perform a query against a set of documents, pull out the ones that seem to match, and then rank them using some relevance criteria.
In one sense, it can be thought of as a regression problem, where the input is a <query, document> pair, and the output is a real number value indicating the relevance.
But there is more to it - for a particular query, the absolute relevance values don’t matter as much as the values relative to each other for a set of results returned. Thus, search and ranking may require a different kind of target or loss function. One possibility is to use a top-n approach, i.e. whether the intended document was present in the top-n, say top 10, results or not.